Automated translation of legacy code for ATE
نویسندگان
چکیده
When an Automated Testing Equipment (ATE) company designs a new system, the issue of backward compatibility is always a major concern, both for the company and its customers. If backward compatibility is maintained, the ATE application engineers face the difficult task of trying to support new features on an aging system. The alternative is to face the problem of converting old test programs to the new environment. Translation of legacy code involves an automatic translation tool, and some application effort applied to those problems the translator couldn’t resolve. To minimize the amount of work required from the application engineers, the tool needs to be semantically-aware; that is, the tool must contain domain-specific knowledge and use that knowledge when translating. The more knowledge a tool has at its disposal, the less code an application engineer is forced to translate by hand. Until recently, it has been difficult to perform automatic translation satisfactorily because it was not cost effective to write a translator that possessed such semantic understanding of the test programs. By making good use of Functional Programming techniques and tools, we were able to construct a cost-effective, semanticallyaware translation tool in a fraction of the time needed by traditional methods. Based upon its performance during testing, we believe the tool to correctly translate the majority of test programs, thereby greatly easing the applications engineers’ burden.
منابع مشابه
A Cooperative Program Understanding Environment
The large size and high-percentage of domain-specific code in most legacy systems makes it unlikely that automated understanding tools will be able to completely understand them. Yet automated tools can clearly recognize portions of the design. That suggests exploring environments in which programmer and system work together to understand legacy software. This paper describes such an environmen...
متن کاملAutomated Application of Design Patterns to Legacy Code
In reengineering legacy code it is frequently useful to introduce a design pattern in order to add clarity to the system and thus facilitate further program evolution. We show that this type of transformation can be automated in a pragmatic manner and propose a methodology for the development of design pattern transformations. We address the issues of the definition of a starting point for the ...
متن کاملService Identification Strategies in Legacy-to-SOA Migration
Legacy-to-SOA migration has been extensively researched in the last decade. Numerous approaches have been proposed. However, some of the issues still remain, such as candidate service identification in legacy code, and tool supported (semi-)automated and programming language independent service extraction. In this research, such existing issues of legacy-toSOA migration approaches are addressed...
متن کاملTrueRefactor: An Automated Refactoring Tool to Improve Legacy System and Application Comprehensibility
Manual refactoring is a complicated process requiring intimate knowledge of the software design and underlying intended behavior of a system. This knowledge is not always available. Fully automated refactoring, using a meta-heuristic based search that is dependent on software quality metrics and code smells as a guide, eliminates the need for the developer to be intimately connected to the soft...
متن کاملProgram Restructuring to Introduce Design Patterns
In restructuring legacy code it may be useful to introduce a design pattern in order to add clarity to the system and thus facilitate further program evolution. We show that aspects of this transformation can be automated and present a nascent high-level language for describing transformations that introduce design patterns. The role of preconditions in preserving program behaviour during this ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001